package com.googlecode.maratische.google.utils;

public final class StringUtils {

	private StringUtils() {
	}
	
	public static String replace(String text, String oldSub, String newSub) {
		while (text.indexOf(oldSub)>-1) {
			text = text.substring(0, text.indexOf(oldSub))+newSub+text.substring(text.indexOf(oldSub)+oldSub.length());
		}
		return text;
	}
	
	public static String getBetweenString(String text, String start, String end) {
		int i = 0;
		int j = 0;
		if ((i = text.indexOf(start)) > -1 && (j = text.indexOf(end, i + start.length())) > -1) {
			return text.substring(i + start.length(), j);
		}
		return null;
	}
	
	static public String removeXml(String str) {
		int sz = str.length();
		StringBuffer buffer = new StringBuffer(sz);
		boolean inTag = false;
		for (int i = 0; i < sz; i++) {
			char ch = str.charAt(i);
			if (ch == '<') {
				inTag = true;
			} else if (ch == '>') {
				inTag = false;
				continue;
			}
			if (!inTag) {
				buffer.append(ch);
			}
		}
		return buffer.toString();
	}

	public static String getAfterString(String text, String start, String end) {
		int i = 0;
		int j = 0;
		if ((i = text.indexOf(start)) > -1 && (j = text.indexOf(end, i + start.length())) > -1) {
			return text.substring(j + end.length());
		}
		return null;
	}

	public static String getBeforeString(String text, String start) {
		if (text.indexOf(start) > -1) {
			return text.substring(0, text.indexOf(start));
		}
		return text;
	}

}
